A “white pages” application refers to a type of computer program that provides similar functionality as is provided by white pages telephone directories distributed in print form. Typically, a white pages application can provide, upon request, names, addresses, and/or telephone numbers. Modern white pages applications have evolved to a point where significantly more information can be provided though the application that has been provided in the past. For example, a white pages application can specify file services, print services, as well as other information that may be stored in a corporate directory. A white pages application usually is constructed in the form of a directory. As known, directories are well suited for fast read access, but can be slower for write operations.
The expanding functionality of white pages applications has led to a situation in which it is not uncommon for the application to draw information from a plurality of disparate data sources. While some information may be resident within the white pages application itself, much data is actually retrieved from different data systems that are independent of the white pages application. For example, a white pages application may access additional information from a human resources database, a content management data store, a skills database, an archive of unstructured data, or the like.
Accessing data from a plurality of different sources can be inefficient. Often, one or more of the different data sources accessed by the white pages application maintains a data schema that is not optimized for use with the query sets provided by the white pages application. In consequence, while the white pages application itself may be fast, when accessing one or more external data sources the performance may slow considerably. Another byproduct of utilizing external data sources with a white pages application is that each disparate system that is accessed may be located a significant physical distance from where the white pages application is hosted. This can introduce network delays further reducing performance.